# Generated by Django 3.2.16 on 2022-12-04 06:48

from django.conf import settings
import django.contrib.postgres.fields.jsonb
from django.db import migrations, models
import django.db.models.deletion
import fotoj.models
import functools
import siriuso.models.postgres
import siriuso.utils.modules
import uuid
from django.utils import timezone

from siriuso.utils import set_enhavo


def fotoj_dosiero_tipoj(apps, schema_editor):
    '''
        создание справочных полей по умолчанию
    '''
    tipoj = [
        ('normala', 'Нормальный'),
    ]

    tipo_modelo = apps.get_model('fotoj', 'FotojFotoDosieroTipo')

    for kodo, nomo in tipoj:
        try:
            tipo_modelo.objects.get(kodo=kodo, forigo=False, publikigo=True)
        except tipo_modelo.DoesNotExist:
            tipo = tipo_modelo.objects.create(
                kodo=kodo,
                arkivo=False,
                publikigo=True,
                publikiga_dato=timezone.now(),
                forigo=False
            )
            set_enhavo(tipo.nomo, nomo, 'ru_RU')
            tipo.save()


def fotoj_albumoj_tipoj(apps, schema_editor):
    '''
        создание справочных полей по умолчанию
    '''
    tipoj = [
        ('baza', 'Основной'),
        ('muro', 'Стена'),
        ('kovrilo', 'Обложки'),
        ('avataro', 'Аватары'),
    ]

    tipoj_modeloj = (apps.get_model('fotoj', 'FotojAlbumoKomunumoTipo'),
                     apps.get_model('fotoj', 'FotojAlbumoUzantoTipo'))

    for tipo_modelo in tipoj_modeloj:
        for kodo, nomo in tipoj:
            try:
                tipo_modelo.objects.get(kodo=kodo, forigo=False, publikigo=True)
            except tipo_modelo.DoesNotExist:
                tipo = tipo_modelo.objects.create(
                    kodo=kodo,
                    arkivo=False,
                    publikigo=True,
                    publikiga_dato=timezone.now(),
                    forigo=False
                )
                set_enhavo(tipo.nomo, nomo, 'ru_RU')
                tipo.save()


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('komunumoj', '0001_squashed_0033_auto_20221013_0421'),
        ('informiloj', '0001_initial'),
        ('main', '0001_squashed_0021_auto_20221025_0702'),
        ('uzantoj', '0001_squashed_0013_auto_20221018_1314'),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='FotojFotoDosieroTipo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('kodo', models.CharField(max_length=16, verbose_name='Kodo')),
                ('speciala', models.BooleanField(default=False, verbose_name='Speciala')),
                ('nomo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Titolo')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotodosierotipo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Tipo de dosieroj de bildoj',
                'verbose_name_plural': 'Tipoj de dosieroj de bildoj',
                'db_table': 'fotoj_fotoj_dosieroj_tipoj',
            },
        ),
        migrations.CreateModel(
            name='FotojFotoDosiero',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('bildo_baza', models.ImageField(upload_to=fotoj.models.dosiero_nomo, verbose_name='Baza bildo')),
                ('hash', models.TextField(blank=True, max_length=64, null=True, verbose_name='Hash')),
                ('bildo_a', models.ImageField(blank=True, upload_to='', verbose_name='Granda bildo')),
                ('bildo_b', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Averaĝa bildo')),
                ('bildo_c', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Malgranda bildo')),
                ('bildo_d', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Miniaturo')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotodosiero_posedanto', to=settings.AUTH_USER_MODEL, verbose_name='Posedanto')),
                ('tipo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojfotodosierotipo', verbose_name='Tipo')),
                ('bildo_e', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Avataro aŭ kovrilo')),
                ('bildo_f', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Miniaturo avataro aŭ kovrilo')),
                ('originalo', models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojfotodosiero', verbose_name='Originala dosiero')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotodosiero_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Dosiero de bildo',
                'verbose_name_plural': 'Dosieroj de bildoj',
                'db_table': 'fotoj_fotoj_dosieroj',
            },
        ),
        migrations.AddIndex(
            model_name='fotojfotodosiero',
            index=models.Index(fields=['hash'], name='fotoj_fotoj_hash_9be6d0_idx'),
        ),
        migrations.CreateModel(
            name='FotojAlbumoUzantoTipo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('kodo', models.CharField(max_length=16, verbose_name='Kodo')),
                ('speciala', models.BooleanField(default=False, verbose_name='Speciala')),
                ('nomo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Titolo')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumouzantotipo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Tipo de albumoj de uzanto',
                'verbose_name_plural': 'Tipoj de albumoj de uzantoj',
                'db_table': 'fotoj_albumoj_uzantoj_tipoj',
            },
        ),
        migrations.CreateModel(
            name='FotojAlbumoUzanto',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('kovrilo', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Foto de kovrilo')),
                ('aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='uzantoj.uzantojaliro', verbose_name='Aliro')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumouzanto_komentado_aliro', to='uzantoj.uzantojaliro', verbose_name='Komentada aliro')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumouzanto_posedanto', to=settings.AUTH_USER_MODEL, verbose_name='Posedanto')),
                ('tipo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojalbumouzantotipo', verbose_name='Tipo')),
                ('nomo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Titolo')),
                ('priskribo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Priskribo')),
                ('kovrilo_maks', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Maksimuma foto de kovrilo')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumouzanto_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Albumo de uzanto',
                'verbose_name_plural': 'Albumoj de uzantoj',
                'db_table': 'fotoj_albumoj_uzantoj',
            },
        ),
        migrations.CreateModel(
            name='FotojFotoUzanto',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('albumo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojalbumouzanto', verbose_name='Albumo')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='uzantoj.uzantojaliro', verbose_name='Komentada aliro')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotouzanto_posedanto', to=settings.AUTH_USER_MODEL, verbose_name='Posedanto')),
                ('priskribo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Priskribo')),
                ('dosiero', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojfotodosiero', verbose_name='Dosieroj')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotouzanto_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Foto de uzanto',
                'verbose_name_plural': 'Fotoj de uzantoj',
                'db_table': 'fotoj_fotoj_uzantoj',
            },
        ),
        migrations.CreateModel(
            name='FotojUzantojAvataro',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('chefa_varianto', models.BooleanField(default=False, verbose_name='Ĉefa varianto')),
                ('aktiva', models.BooleanField(default=False, verbose_name='Aktiva')),
                ('bildo', models.ImageField(default=None, upload_to=fotoj.models.uzantoj_avataro_nomo, verbose_name='Avataro')),
                ('bildo_min', models.ImageField(default=None, upload_to=fotoj.models.uzantoj_avataro_nomo, verbose_name='Miniaturo')),
                ('bildo_maks', models.ImageField(blank=True, null=True, upload_to=fotoj.models.uzantoj_avataro_nomo, verbose_name='Maksimuma bildo')),
                ('avataro', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojavataro_avataro', to='fotoj.fotojfotouzanto', verbose_name='Bildo de la albumo')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojavataro_komentado_aliro', to='uzantoj.uzantojaliro', verbose_name='Komentada aliro')),
                ('lingvo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojavataro_lingvo', to='informiloj.informilojlingvo', verbose_name='Lingvo')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojavataro_posedanto', to=settings.AUTH_USER_MODEL, verbose_name='Posedanto')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojavataro_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Avataro',
                'verbose_name_plural': 'Avataroj',
                'db_table': 'fotoj_uzantoj_avataroj',
            },
        ),
        migrations.CreateModel(
            name='FotojUzantojKovrilo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('chefa_varianto', models.BooleanField(default=False, verbose_name='Ĉefa varianto')),
                ('aktiva', models.BooleanField(default=False, verbose_name='Aktiva')),
                ('bildo', models.ImageField(default=None, upload_to=fotoj.models.uzantoj_kovrilo_nomo, verbose_name='Kovrilo')),
                ('bildo_maks', models.ImageField(blank=True, null=True, upload_to=fotoj.models.uzantoj_kovrilo_nomo, verbose_name='Maksimuma bildo')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojkovrilo_komentado_aliro', to='uzantoj.uzantojaliro', verbose_name='Komentada aliro')),
                ('kovrilo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojkovrilo_kovrilo', to='fotoj.fotojfotouzanto', verbose_name='Bildo de la albumo')),
                ('lingvo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojkovrilo_lingvo', to='informiloj.informilojlingvo', verbose_name='Lingvo')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojkovrilo_posedanto', to=settings.AUTH_USER_MODEL, verbose_name='Posedanto')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojuzantojkovrilo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Kovrilo',
                'verbose_name_plural': 'Kovriloj',
                'db_table': 'fotoj_uzantoj_kovriloj',
            },
        ),
        migrations.CreateModel(
            name='FotojAlbumoKomunumoTipo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('kodo', models.CharField(max_length=16, verbose_name='Kodo')),
                ('speciala', models.BooleanField(default=False, verbose_name='Speciala')),
                ('nomo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Titolo')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumokomunumotipo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Tipo de albumoj de komunumo',
                'verbose_name_plural': 'Tipoj de albumoj de komunumoj',
                'db_table': 'fotoj_albumoj_komunumoj_tipoj',
            },
        ),
        migrations.CreateModel(
            name='FotojAlbumoKomunumo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('lasta_dato', models.DateTimeField(blank=True, null=True, verbose_name='Dato de lasta modifo')),
                ('nomo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Titolo')),
                ('priskribo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Priskribo')),
                ('kovrilo', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Foto de kovrilo')),
                ('kovrilo_maks', models.ImageField(blank=True, null=True, upload_to='', verbose_name='Maksimuma foto de kovrilo')),
                ('aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumokomunumo_aliro', to='komunumoj.komunumojaliro', verbose_name='Aliro')),
                ('autoro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumokomunumo_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Aŭtoro')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumokomunumo_komentado_aliro', to='komunumoj.komunumojaliro', verbose_name='Komentada aliro')),
                ('lasta_autoro', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='fotoj_fotojalbumokomunumo_lasta_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Modifita de')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='komunumoj.komunumo', verbose_name='Posedanto')),
                ('tipo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojalbumokomunumotipo', verbose_name='Tipo')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojalbumokomunumo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Albumo de komunumo',
                'verbose_name_plural': 'Albumoj de komunumoj',
                'db_table': 'fotoj_albumoj_komunumoj',
            },
        ),
        migrations.CreateModel(
            name='FotojFotoKomunumo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('lasta_dato', models.DateTimeField(blank=True, null=True, verbose_name='Dato de lasta modifo')),
                ('priskribo', models.JSONField(blank=True, default=siriuso.utils.modules.default_lingvo, encoder=siriuso.models.postgres.CallableEncoder, verbose_name='Priskribo')),
                ('albumo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojalbumokomunumo', verbose_name='Albumo')),
                ('autoro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotokomunumo_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Aŭtoro')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotokomunumo_komentado_aliro', to='komunumoj.komunumojaliro', verbose_name='Komentada aliro')),
                ('lasta_autoro', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='fotoj_fotojfotokomunumo_lasta_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Modifita de')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotokomunumo_posedanto', to='komunumoj.komunumo', verbose_name='Posedanto')),
                ('dosiero', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojfotodosiero', verbose_name='Dosieroj')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojfotokomunumo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Foto de komunumo',
                'verbose_name_plural': 'Fotoj de komunumoj',
                'db_table': 'fotoj_fotoj_komunumoj',
            },
        ),
        migrations.CreateModel(
            name='FotojKomunumoAvataro',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('lasta_dato', models.DateTimeField(blank=True, null=True, verbose_name='Dato de lasta modifo')),
                ('chefa_varianto', models.BooleanField(default=False, verbose_name='Ĉefa varianto')),
                ('aktiva', models.BooleanField(default=False, verbose_name='Aktiva')),
                ('bildo', models.ImageField(default=None, upload_to=functools.partial(fotoj.models.komunumoj_bildo_nomo, *(), **{'tipo': 'avataroj'}), verbose_name='Avataro')),
                ('bildo_min', models.ImageField(default=None, upload_to=functools.partial(fotoj.models.komunumoj_bildo_nomo, *(), **{'tipo': 'avataroj'}), verbose_name='Miniaturo')),
                ('bildo_maks', models.ImageField(blank=True, null=True, upload_to=functools.partial(fotoj.models.komunumoj_bildo_nomo, *(), **{'tipo': 'avataroj'}), verbose_name='Maksimuma bildo')),
                ('autoro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojkomunumoavataro_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Aŭtoro')),
                ('avataro', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojfotokomunumo', verbose_name='Bildo de la albumo')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='komunumoj.komunumojaliro', verbose_name='Komentada aliro')),
                ('lasta_autoro', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='fotoj_fotojkomunumoavataro_lasta_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Modifita de')),
                ('lingvo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='informiloj.informilojlingvo', verbose_name='Lingvo')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojkomunumoavataro_posedanto', to='komunumoj.komunumo', verbose_name='Posedanto')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojkomunumoavataro_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Avataro de komunumo',
                'verbose_name_plural': 'Avataroj de komunumo',
                'db_table': 'fotoj_komunumoj_avataroj',
            },
        ),
        migrations.CreateModel(
            name='FotojKomunumoKovrilo',
            fields=[
                ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name='UUID')),
                ('krea_dato', models.DateTimeField(auto_now_add=True, verbose_name='Krea dato')),
                ('forigo', models.BooleanField(blank=True, default=False, verbose_name='Forigo')),
                ('foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Foriga dato')),
                ('a_foriga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Aŭtomata foriga dato')),
                ('publikigo', models.BooleanField(default=False, verbose_name='Publikigis')),
                ('publikiga_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Dato de publikigo')),
                ('arkivo', models.BooleanField(default=False, verbose_name='Arkiva')),
                ('arkiva_dato', models.DateTimeField(blank=True, default=None, null=True, verbose_name='Arkiva dato')),
                ('lasta_dato', models.DateTimeField(blank=True, null=True, verbose_name='Dato de lasta modifo')),
                ('chefa_varianto', models.BooleanField(default=False, verbose_name='Ĉefa varianto')),
                ('aktiva', models.BooleanField(default=False, verbose_name='Aktiva')),
                ('bildo', models.ImageField(default=None, upload_to=functools.partial(fotoj.models.komunumoj_bildo_nomo, *(), **{'tipo': 'kovriloj'}), verbose_name='Kovrilo')),
                ('bildo_maks', models.ImageField(blank=True, null=True, upload_to=functools.partial(fotoj.models.komunumoj_bildo_nomo, *(), **{'tipo': 'kovriloj'}), verbose_name='Maksimuma bildo')),
                ('autoro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojkomunumokovrilo_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Aŭtoro')),
                ('komentado_aliro', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='komunumoj.komunumojaliro', verbose_name='Komentada aliro')),
                ('kovrilo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='fotoj.fotojfotokomunumo', verbose_name='Bildo de la albumo')),
                ('lasta_autoro', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='fotoj_fotojkomunumokovrilo_lasta_autoro', to=settings.AUTH_USER_MODEL, verbose_name='Modifita de')),
                ('lingvo', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='informiloj.informilojlingvo', verbose_name='Lingvo')),
                ('posedanto', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojkomunumokovrilo_posedanto', to='komunumoj.komunumo', verbose_name='Posedanto')),
                ('wablomo', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='fotoj_fotojkomunumokovrilo_wablomo', to='main.siriusowablono', verbose_name='Ĝenerala ŝablono')),
            ],
            options={
                'verbose_name': 'Kovrilo de komunumo',
                'verbose_name_plural': 'Kovriloj de komunumoj',
                'db_table': 'fotoj_komunumoj_kovriloj',
            },
        ),
        migrations.RunPython(fotoj_dosiero_tipoj),
        migrations.RunPython(fotoj_albumoj_tipoj),
    ]
